using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using System;
using System.Collections.Generic;
using System.Text;

namespace Momentum.Static
{
    public class mStaticWorld
    {

        #region Instance Variables

        protected static SpriteFont m_TankFont;
        protected static Vector2 m_Size;
        protected static Vector2 m_ScreenSize;
        protected static Vector2 m_ScreenCenter;
        protected static float m_Friction;
        protected static Random m_Random = new Random(DateTime.Now.Millisecond);

        #endregion

        #region Getters and Setters

        public static SpriteFont TankFont
        {
            get { return m_TankFont; }
            set { m_TankFont = value; }
        }

        public static Vector2 Size
        {
            get { return m_Size; }
            set { m_Size = value; }
        }

        public static Vector2 ScreenSize
        {
            get { return m_ScreenSize; }
            set { m_ScreenSize = value; m_ScreenCenter = value / 2; }
        }

        public static Vector2 ScreenCenter
        {
            get { return m_ScreenCenter; }
        }

        public static float Friction
        {
            get { return m_Friction; }
            set { m_Friction = value; }
        }

        public static Random Random
        {
            get { return m_Random; }
        }

        #endregion

        #region Static Methods

        public static float RandomBetween(float min, float max)
        {
            return min + (float)m_Random.NextDouble() * (max - min);
        }

        #endregion

    }
}
